10 IFX=.THENX=1:LOAD"KLOROS.OBJ",8,1 20 POKE53281,.:POKE53280,.:PRINTCHR$(8)CHR$(142)CHR$(144)CHR$(147):GOTO190 30 POKES+U,Q:POKES+F,O:FORC=ZTO.STEP-U:POKES+U,C:FORA=.TOZ:NEXT:NEXT 40 POKES+F,O-U:RETURN 50 ONFNB(.)GOTO90:X=H+(C=130)*-U:SYSSF,B(X):SC=SC+50*(LS+U):I$=STR$(SC) 60 SYSPL,32,8:PRINT"[158]";:GOSUB180 70 FORI=.TOF:POKEVB+X,38+I:FORA=.TO40:NEXT:NEXT:POKEVB+X,51:GOSUB30 80 RETURN 90 POKES+U,K:POKES,O:POKES+F,L*W+Z:POKEV+F,PEEK(V):POKEV+Q,PEEK(V+U)-K 100 POKEV+Z,PEEK(V+Z)ORF:POKES+F,E*Z+U:RETURN 110 X=E+((C=Z-UORC=L)*-U):SYSSB,X,38,F:SYSTF,B(X):SYSTC,H,RORB(X):POKEV+39+X,U 120 GOSUB30:WAITV+Z,B(X),B(X):SC=SC+VX*(LS+U):I$=STR$(SC):SYSPL,32,8:PRINT"[158]"; 130 GOSUB180:R=8+(TU)*N+(T>W)*-U 140 POKEV+X*W+U,.:POKEV+39+X,N-W:POKEV+Z,PEEK(V+Z)ORB(X):C=PEEK(VC):RETURN 150 A=(RND(U)*W)+E:X=FNX(.):I=FNY(.) 160 SYSMD,Q,D(U+X,U+I):POKEV+VX,PEEK(V+A*W):POKEV+VY,PEEK(V+A*W+U) 170 POKEV+Z,PEEK(V+Z)ORB:RETURN 180 PRINTRIGHT$("00000"+(RIGHT$(I$,LEN(I$)-U)),Q):A=FRE(.):RETURN 190 GOSUB1070:GOSUB1120:GOSUB740:POKE731,2:POKE785,135:POKE786,199 200 DIMB(7),D(2,2),S(7),T(4,31),T$(4),C(9) 210 FORX=.TO7:B(X)=2^X:NEXT 220 V=53248:M=.:C=.:I=.:B=32:J=56320:S=54272:VB=50168:VX=10:VY=11:I$="":R=.:A=. 230 G=500:VX=10:VY=11:U=1:W=2:E=3:F=4:Q=5:H=6:N=14:K=12:L=22:Z=21:T=.:O=129 240 VC=V+30:XS=50884:YS=50897:TC=50910:JF=50923:CF=50930:MD=50949:SS=50993:SH=3 250 SB=51012:SF=51043:TF=51060:PL=51108:LC=685:IRQ=50176:IQ=740:SC=.:HI=.:LS=. 260 DEFFNF(X)=(PEEK(J)AND(N+W))=.:DEFFNK(X)=-(FNF(.)AND((PEEK(V+Z)ANDF)=.)) 270 DEFFNB(X)=-(C<>L*EANDC<>O+U):DEFFNL(X)=-((PEEK(V+Z)ANDB)=.) 280 DEFFNX(X)=SGN(PEEK(V)-PEEK(V+A*W)):DEFFNY(X)=SGN(PEEK(V+U)-PEEK(V+A*W+U)) 290 DEFFNC(X)=-((CANDQ)>.):DEFFNCD(X)=-((CAND193)=U) 300 DEFFNW(X)=-(C=NORC=KORC=LORC=Z-U):DEFFNR(X)=RND(U)*(H+W)+U 310 FORX=.TO31:READA:T(.,X)=A:T(1,X)=A:T(2,X)=A:NEXT 320 FORI=3TO4:FORX=.TO31:READT(I,X):NEXTX,I:FORX=.TO4:READT$(X),C(2*X),C(2*X+1) 330 NEXT:FORX=.TO2:FORI=.TO2:READD(X,I):NEXTI,X:FORI=.TO7:READS(I):NEXT 340 FORX=.TO13:B$(.)=B$(.)+"#%":B$(1)=B$(1)+"$&":NEXT 350 SYSXS,24,225:SYSYS,55,230:SYSCF,36,39,24:SYSSB,3,43,7:SYSSB,4,43,7 360 SYSSF,0:SYSSF,35:SYSTF,0 370 SYSMD,0,0:SYSMD,1,0:SYSMD,2,1:SYSMD,3,4:SYSMD,4,6:SYSMD,6,0:SYSMD,7,0 380 SYSSS,0,1:SYSSS,2,5:SYSSS,3,1:SYSSS,4,1 390 POKEV+28,219:POKEV+37,15:POKEV+38,11:POKEV+41,1 400 POKEIQ,.:FORX=.TO31:POKE61720+X,.:NEXT:POKEIQ,1:SYSSS,5,1 410 SYSPL,2,13:PRINT" PRESS FIRE BUTTON TO START MISSION " 420 LS=.:T=.:I=.:PRINT"";:FORA=.TO4:SYSPL,3+A*7,15:PRINTT$(A);:NEXT:GOSUB990 430 PRINT:PRINT"[147][149]"B$(1):PRINT"[145][145]":FORX=.TO11:PRINTB$(.):PRINTB$(1):NEXT 440 PRINTB$(.)"":FORX=.TO20 450 PRINTCHR$(13)TAB(28)"[194] [194][157]";CHR$(148)" ";:NEXT 460 PRINTCHR$(13)TAB(28)"[173][195][195][195][195][195][195][195][195][195][189][157]";CHR$(148)"[195]"; 470 PRINT""TAB(28)"[176][195][195][195][195][195][195][195][195][195][174][157]"CHR$(148)"[195]" 480 PRINTTAB(28)"[194]VEE KLORO[194][157]"CHR$(148)" [157]S" 490 PRINTTAB(28)"[171][195][195][195][195][195][195][195][195][195][179][157]"CHR$(148)"[195]":PRINTTAB(30)"[176][195][195][195][195][195][195][195][174]" 500 PRINTTAB(30)"[194] [194]":PRINTTAB(30)"[173][195][195][195][195][195][195][195][189]":PRINTTAB(31)"[176][195][195][195][195][195][174]" 510 PRINTTAB(31)"[194]SCORE[194]":PRINTTAB(31)"[194][158]00000[194]":PRINTTAB(31)"[171][195][195][195][195][195][179]" 520 PRINTTAB(31)"[194]HIGH [194]":PRINTTAB(31)"[194]00000[194]":PRINTTAB(31)"[171][195][195][195][195][195][179]" 530 PRINTTAB(31)"[194]SHIPS[194]":PRINTTAB(31)"[194][159][216] [216] [216][194]":PRINTTAB(31)"[171][195][195][195][195][195][179]" 540 PRINTTAB(31)"[194]FLAGS[194]":PRINTTAB(31)"[194] [194]":PRINTTAB(31)"[194] [194]" 550 PRINTTAB(31)"[171][195][195][195][195][195][179]" 560 PRINTTAB(31)"[194]MILES[194]":PRINTTAB(31)"[194] [194]":PRINTTAB(31)"[173][195][195][195][195][195][189]" 570 FORX=.TO7:POKEVB+X,S(X):NEXT:GOSUB950 580 POKEV+27,-(T=.)*192:R=8+(TU)*N+(T>W)*-U 590 GOSUB880:M=.:POKEV+27,-(T=.)*192 600 POKEV+Z,1+2+8+16+64+128:X=PEEK(VC):X=PEEK(VC):POKE730,230 610 SYSIRQ:SYSJF,U 620 REM MAIN LOOP 630 C=PEEK(VC):SYSPL,N*W+F,Z:PRINT""M:ONFNK(.)GOSUB50:ONFNC(.)GOTO660 640 ONFNL(.)GOSUB150:ONFNW(.)GOSUB110 650 M=M+U:ON-(M2)*-35),17:PRINT"\":SYSPL,32,21:PRINT" " 910 POKEV+42,12:POKEV+43,12:POKELC,12:POKEV+44,12:POKEV+45,12 920 IFSC>HITHENHI=SC 930 I$=STR$(HI):SYSPL,32,11:PRINT"[146]";:GOSUB180:RETURN 940 REM RESET POSITIONS 950 POKEV+12,220:POKEV+14,125:POKEV+13,.:POKEV+15,130 960 POKEV,125:POKEV+1,215:POKEV+2,PEEK(V):POKEV+3,PEEK(V+1)-90 970 POKEV+6,75:POKEV+7,.:POKEV+8,200:POKEV+9,.:RETURN 980 REM COMPUTERESE - SELECT TERRAIN 990 POKES+11,64:POKE S+24,15:POKES+U,25:POKES+Q,16:POKES+H,240:POKES+F,17 1000 POKES+U,N*RND(.):I=T 1010 IFUSR(.)=3THENT=T+1+(T=4)*5 1020 IFUSR(.)=7THENT=T-1+(T=.)*-5 1030 SYSPL,3+T*7,15:PRINT""T$(T):IFT<>ITHENSYSPL,3+I*7,15:PRINT"[146]"T$(I) 1040 IFFNF(.)=.THEN1000 1050 SYS52545:POKES+H,242:POKES+W,10:POKES+E,O:RETURN 1060 REM COPY CHAR SET 1070 POKE56333,127:POKE1,51 1080 POKE781,9:POKE782,1:POKE90,.:POKE91,216:POKE88,.:POKE89,248:SYS41964 1090 POKE1,55:POKE56333,129 1100 READA:IFA=-1THENRETURN 1110 FORX=.TO7:READD:POKE61440+A*8+X,D:NEXT:GOTO1100 1120 POKE56578,PEEK(56578)OR3:POKE56576,PEEK(56576)AND252 1130 POKE53272,PEEK(53272)AND15:POKE648,192:PRINTCHR$(147) 1140 POKE53272,(PEEK(53272)AND240)OR12 1150 POKE53270,PEEK(53270)OR16:PRINTCHR$(147):RETURN 1160 DATA28,128,112,127,124,112,64,64,64 1170 DATA48,126,66,66,66,66,66,126,. 1180 DATA49,8,24,8,8,8,8,28,. 1190 DATA50,126,66,4,8,16,32,126,. 1200 DATA51,126,2,2,14,2,2,126,. 1210 DATA52,4,12,20,36,126,4,4,. 1220 DATA53,126,64,64,126,2,2,126,. 1230 DATA54,126,64,64,126,66,66,126,. 1240 DATA55,126,2,2,2,2,2,2,. 1250 DATA56,126,66,66,126,66,66,126,. 1260 DATA57,126,66,66,126,2,2,2,. 1270 DATA88,,24,24,219,255,219,219,.,-1 1280 DATA186,102,153,170,170,157,102,234 1290 DATA171,102,153,170,170,153,102,186 1300 DATA170,102,153,170,174,153,102,170 1310 DATA170,102,153,174,170,153,118,170 1320 DATA170,42,202,242,252,252,252,252 1330 DATA252,252,252,252,241,197,21,. 1340 DATA170,168,161,133,21,21,21,21 1350 DATA21,21,21,21,69,81,84,. 1360 DATA3,3,10,46,46,186,186,170 1370 DATA170,170,170,42,42,10,3,3 1380 DATA192,192,80,84,148,149,165,165 1390 DATA165,165,165,148,84,80,192,192 1400 REM TERRAIN TYPES 1410 DATA OCEANS,14,6,DESERT,10,9,JUNGLE,7,5,CITY 1,11,15,CITY 2,11,9 1420 REM FIRE DIRECTION ARRAY 1430 DATA 8,1,2,7,,3,6,5,4 1440 REM SPRITE POINTERS 1450 DATA 32,52,33,50,36,33,34,35